package com.mingqijia.gassafety.job.feign;

import com.mingqijia.gassafety.job.request.ConsoleSkSupplierListRequest;
import com.mingqijia.gassafety.job.request.mbp.ConsoleSkUpdateRequest;
import com.mingqijia.gassafety.job.request.sk.ConsoleSkRecordsRequest;
import com.mingqijia.gassafety.job.response.ConsoleSkSupplierListResponse;
import com.mingqijia.gassafety.job.response.ConsoleSkUpdateResponse;
import com.mingqijia.gassafety.job.response.sk.ConsoleSkRecordsResponse;
import com.mingqijia.gassafety.job.response.sk.ConsoleSkUserListResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 智慧厨房查询报警器信息接口：1-SOS报警器，2-水浸报警器，3-烟雾报警器，4-智能门锁
 * @author solyutian
 * @date 2023/6/27 09:51
 */
@FeignClient(value = "${console.sk.feign.env}",url = "${console.sk.feign.env.url:}")
public interface ConsoleSkFeignClient {


  /**
   * 更新记录状态
   * @param request
   * @return
   */
  @PostMapping(value = "iot/sk/inner/alarm/sos/update",produces = "application/json;charset=utf-8")
  ConsoleSkUpdateResponse alarmSOSUpdate(@RequestBody ConsoleSkUpdateRequest request);

  /**
   * 查询厂商
   * @param request
   * @return
   */
  @PostMapping(value = "iot/sys/v1/supplier/list", produces = "application/json;charset=utf-8")
  ConsoleSkSupplierListResponse supplierList(@RequestBody ConsoleSkSupplierListRequest request);

  /**
   * Description: 请求家庭用户列表 <br>
   *
   * @author 王伟<br>
   * @taskId <br>
   * @param deviceId
   * @return <br>
   */
  @PostMapping(value = "iot/sk/inner/alarm/sos/userList", produces = "application/json;charset=utf-8")
  ConsoleSkUserListResponse alarmSOSUserList(@RequestParam("deviceId") String deviceId);

  /**
   * 查询报警信息列表
   *
   * @param request
   * @return
   */
  @PostMapping(value = "iot/sk/inner/alarm/sos/records", produces = "application/json;charset=utf-8")
  ConsoleSkRecordsResponse alarmSOSRecords(@RequestBody ConsoleSkRecordsRequest request);




}
